// 此文件用来处理options表的数据操作
//实现所有分类数据相关操作
let conn=require('../utils/myconn.js');
//新增导航菜单项
exports.addMenu=(obj,callback)=>{
    //1.查询出所有的menu数据
    let sql='select value from `options` where id = 9';
    conn.query(sql,(err,results)=>{
        if(err){
            callback(err)
        }else{
            let jsonStr=results[0].value;
            //2.将json字符串转换为js数组
            let arr=JSON.parse(jsonStr);
            //3.将传入的数据对象添加到数组
            arr.push(obj);
            //4.将添加了数据的数组重新转换为json格式字符串
            let finalStr=JSON.stringify(arr);
            //5.实现update
            sql=`update options set value = ? where id = 9`;
            conn.query(sql,[finalStr],(err1)=>{
                if(err1){
                    callback(err1)
                }else{
                    callback(null)
                }
            })
        }
    })
}

//获取网站默认设置
exports.getSettings=(callback)=>{
    let sql=`select value from options where id<9`;
    conn.query(sql,(err,results)=>{
        if(err){
            callback(err)
        }else{
            callback(null,results)
        }
    })
}

//修改网站设置
exports.updateSettings=(obj,callback)=>{
    let cnt=0;
    //创建sql语句,动态生成多条sql语句
    for(let key in obj){
        let sql='update `options` set value=?where`key`=?';
        conn.query(sql,[obj[key],key],(err,result)=>{
            if(err){
                callback(err);
                return;
            }else{
                cnt++;
                if(cnt===6){
                    callback(null)
                }
            }
        })
    }
}